Dự án Scratch — Lớp 6

Trò chơi di chuyển trong mê cung mini

Hướng dẫn từng bước xây dựng game mê cung: vẽ đường đi, điều khiển nhân vật bằng phím mũi tên, phát hiện va chạm tường và tìm lối ra.

Giới thiệu dự án

Trong dự án này, bạn sẽ tạo một mê cung mini trên Scratch: người chơi dùng phím mũi tên đưa nhân vật từ điểm xuất phát đến đích mà không được chạm vào tường. Đây là bài tập tổng hợp nhiều kiến thức đã học — sự kiện phím, di chuyển tọa độ, cảm biến màu sắc, biến và điều kiện.

Logo Scratch
Dự án mê cung phù hợp học sinh lớp 6 — vừa sức, dễ mở rộng thêm màn và bảng điểm
Vẽ mê cung Thiết kế phông nền với tường một màu thống nhất
Điều khiển Di chuyển nhân vật bằng 4 phím mũi tên
Va chạm Phát hiện chạm tường và đẩy nhân vật lùi lại
Chiến thắng Nhận biết khi chạm vùng đích và thông báo thắng
💡 Ghi nhớ

Thời gian hoàn thành ước tính: 2–3 giờ (chia nhiều buổi). Làm xong bản cơ bản trước, sau đó mới thêm đồng hồ, nhiều màn hoặc chướng ngại vật.

Chuẩn bị trước khi bắt đầu

Tạo dự án mới, đặt tên ví dụ Me-cung-mini. Bạn sẽ cần:

Bước 1: Vẽ mê cung trên phông nền

Thiết kế
  1. Chọn Stage (sân khấu) → tab BackdropsPaint hoặc chỉnh sửa phông nền trắng.
  2. Dùng công cụ Fill tô nền màu sáng (ví dụ trắng hoặc xám nhạt) — đây là đường đi.
  3. Dùng công cụ Rectangle hoặc Brush vẽ tường bằng một màu đậm, dễ nhận (ví dụ xanh dương đậm). Tất cả tường phải cùng một màu.
  4. Đánh dấu điểm xuất phát (góc hoặc ô trống) và đích bằng màu khác (ví dụ xanh lá) — vùng nhỏ, dễ nhận biết.
  5. Đảm bảo có ít nhất một lối đi từ start đến đích; tường dày đủ để nhân vật không "lọt" qua khe hở.
Nhóm khối Giao diện
Tab Backdrops và công cụ vẽ nằm trong phần chỉnh sửa phông nền của Scratch
⚠️ Quan trọng

Tường phải cùng một màu chính xác. Nếu lệch sắc độ dù chỉ một chút, khối chạm màu có thể không nhận diện đúng — nhân vật xuyên tường hoặc kẹt oan.

Bước 2: Đặt nhân vật tại điểm xuất phát

Sprite người chơi

Chọn sprite nhân vật, kéo đến vị trí xuất phát trên mê cung. Ghi nhớ tọa độ xy (hiện dưới sân khấu) — sẽ dùng khi reset sau khi chạm tường.

khi nhấn cờ xanh
  đi tới x: [-180] y: [-120]

Thay -180-120 bằng tọa độ thực tế của điểm xuất phát trong mê cung bạn vẽ.

💡 Ghi nhớ

Nhân vật nên nhỏ hơn đường đi một chút. Nếu sprite quá to, cạnh costume dễ chạm tường ngay cả khi "nhìn" như đang ở giữa lối.

Bước 3: Điều khiển bằng phím mũi tên

Lập trình di chuyển

Tạo bốn script riêng — mỗi phím mũi tên một script. Cách này dễ đọc và dễ sửa hơn gom tất cả vào một vòng lặp.

Nhóm khối Sự kiện
Khối "khi phím … được nhấn" nằm trong nhóm Sự kiện (màu vàng)

Phím mũi tên phải

khi phím [mũi tên phải v] được nhấn
  thay đổi x thêm [5]

Các phím còn lại

Nhấn chuột phải vào script đầu tiên → Duplicate để sao chép nhanh, rồi đổi phím và trục tọa độ. Chạy thử — nhân vật phải di chuyển được nhưng chưa bị chặn bởi tường.

Bước 4: Phát hiện va chạm tường

Cảm biến màu

Sau mỗi bước di chuyển, kiểm tra nhân vật có chạm màu tường không. Nếu có — hoàn tác bước vừa rồi bằng cách di chuyển ngược lại.

Nhóm khối Cảm biến
Khối "chạm màu …?" trong nhóm Cảm biến — dùng pipette lấy đúng màu tường

Script mũi tên phải (có va chạm)

khi phím [mũi tên phải v] được nhấn
  thay đổi x thêm [5]
  nếu <chạm màu [#3366cc]?> thì
    thay đổi x thêm [-5]
  kết thúc

Nhấn vào ô màu trong khối chạm màu → chọn pipette → click lên vùng tường trên sân khấu để lấy đúng mã màu.

📌 Cách hoạt động

Nhân vật tiến 5 bước sang phải → nếu cạnh costume chạm tường xanh → lùi 5 bước. Kết quả: đứng sát tường, không xuyên qua. Lặp logic tương tự cho ba phím còn lại (đổi chiều lùi cho đúng).

⚠️ Cách xử lý khác (dễ hơn cho lớp 6)

Thay vì lùi một bước, có thể đi tới lại tọa độ xuất phát và nói "Ôi không!" trong 1 giây — phù hợp mê cung khó, phạt người chơi chạm tường.

Bước 5: Điều kiện thắng

Về đích

Thêm script kiểm tra liên tục xem nhân vật đã chạm màu đích (vùng xanh lá bạn vẽ) chưa:

khi nhấn cờ xanh
  lặp mãi
    nếu <chạm màu [#33cc33]?> thì
      nói [Bạn đã thoát mê cung!] trong [3] giây
      dừng [tất cả v]
    kết thúc
  kết thúc

Dùng pipette lấy màu vùng đích. Khi thắng, dự án dừng — người chơi không di chuyển thêm được.

💡 Ghi nhớ

Có thể thay dừng tất cả bằng phát thông báo [thắng] và chuyển sang phông nền màn tiếp theo — nền tảng cho game nhiều level.

Mở rộng dự án (tùy chọn)

Đồng hồ đếm thời gian

Bật hiển thị khối đồng hồ (Cảm biến). Cờ xanh: đặt đồng hồ về 0. Khi thắng, nói "Bạn hoàn thành trong … giây" kèm giá trị đồng hồ.

Biến số lần chạm tường

Tạo biến lỗi. Mỗi lần va chạm tường (hoặc reset về đích), thay đổi lỗi thêm 1. Hiển thị trên sân khấu — thách thức bạn bè ai ít lỗi nhất.

Nhiều màn mê cung

Vẽ thêm 2–3 phông nền. Khi thắng: chuyển sang phông nền [màn 2], đi tới lại điểm xuất phát của màn mới.

📌 Ý tưởng sáng tạo
  • Thêm âm thanh khi chạm tường hoặc khi thắng.
  • Đổi nhân vật và chủ đề: mê cung trong rừng, ngoài vũ trụ, dưới biển.
  • Vẽ chướng ngại di chuyển (sprite quái vật đi qua lại).

Kiểm tra và hoàn thiện

  1. Chạy game từ cờ xanh — nhân vật có về đúng điểm xuất phát không?
  2. Thử đi sát tường bốn hướng — có xuyên tường không?
  3. Chạm vùng đích — thông báo thắng có hiện không?
  4. Chạy lại lần 2 — mọi thứ reset đúng không?
  5. Nhờ bạn chơi thử — mê cung có quá dễ hoặc quá khó không?
⚠️ Lỗi thường gặp

Nhân vật "dính" tường dù chưa chạm — do costume có viền trong suốt hoặc màu tường không đồng nhất. Thu nhỏ sprite hoặc vẽ lại tường bằng một lần tô Fill.

💡 Ghi nhớ

Dự án mê cung mini là cột mốc quan trọng lớp 6: bạn đã tự thiết kế, lập trình logic game và kiểm thử sản phẩm. Hãy lưu dự án lên Scratch và chia sẻ với lớp!